﻿#ifndef __GAF_RENDERABLE_H__
#define __GAF_RENDERABLE_H__


namespace GAF
{
	class Renderable;
	class NotRender; //-* Renderable
}
typedef GAF::Renderable		GAF_IRenderable;
typedef GAF::NotRender		GAF_CNotRender;

#include "GAF_Define.h"
#include "GAF_Graphics.h"

namespace GAF
{
	/// 渲染方式接口
	/**
	 *  \addindex P
	 */
	class _INTERFACE Renderable
	{
	public:
		/// 渲染操作
		virtual bool	Render(Graphics* pGraphics) = 0;
	};

	/// 无渲染类
	class NotRender : public Renderable
	{
	public:
		bool		Render(Graphics* pGraphics)
				{return true;}
	};
}

#endif